<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>我的 OJ 平台</title>
        <meta name="description" content="Charcoal is a free Bootstrap 4 UI kit build by @attacomsian at Wired Dots." />
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <!--Bootstrap 4-->
        <link rel="stylesheet" href="css/bootstrap.min.css">
    </head>
    <body>

        <nav class="navbar navbar-expand-md navbar-dark fixed-top sticky-navigation">
            <a class="navbar-brand font-weight-bold" href="#">我的 OJ 系统</a>
            <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#topMenu" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
                <span class="navbar-toggler-icon"></span>
            </button>

            <div class="collapse navbar-collapse" id="topMenu">
                <ul class="navbar-nav ml-auto">
                </ul>
            </div>
        </nav>

        <!--hero section-->
        <section class="bg-hero">
            <div class="container">
                <div class="row vh-100">
                    <div class="col-sm-12 my-auto text-center">
                        <h1>我的 OJ 平台</h1>
                        <p class="lead text-capitalize my-4">
                            基于 Java Servlet 实现的 OJ 平台
                        </p>
                        <a href="https://gitee.com" class="btn btn-outline-light btn-radius btn-lg">项目链接</a>
                        &nbsp;
                        <a href="https://gitee.com" class="btn btn-outline-light btn-radius btn-lg">项目链接</a>
                    </div>
                </div>
            </div>
        </section>

        <!--components-->
        <section class="my-5 pt-5">
            <div class="container">
                <!-- Brand color  -->

                <!-- Links  -->

                <!-- Grid  -->

                <!-- Fonts  -->

                <!-- Buttons  -->

                <!-- Forms  -->

                <!-- Dropdown  -->

                <!-- Navs  -->

                <!-- Navbar  -->

                <!-- Tables  -->
                <div class="row mb-5" id="tables">
                    <div class="col-sm-12">

                        <div class="mt-3 mb-5">
                            <h3>题 目 列 表</h3>
                            <table class="table table-hover">
                                <thead>
                                    <tr>
                                        <th>编 号</th>
                                        <th>标 题</th>
                                        <th>难 度</th>
                                    </tr>
                                </thead>

                                <tbody id="problemTable">


<!--                                    <tr>-->
<!--                                        <td>1</td>-->
<!--                                        <td>两数之和</td>-->
<!--                                        <td>简单</td>-->
<!--                                    </tr>-->


                                </tbody>
                            </table>
                        </div>

                    </div>
                </div>

                <!-- Pagination  -->

                <!-- Jumbotron  -->

                <!-- Cards  -->

                <!-- Tooltip  -->

                <!-- Popovers  -->

                <!-- Badges  -->

                <!-- Modals  -->

                <!-- Alerts  -->

                <!-- Progress bars  -->

                <!-- List group  -->

                <!-- Image thumbnails  -->

                <!-- Figures  -->

                <!-- Breadcrumbs  -->

                <!-- Carousel  -->

                <!-- Close  -->

                <!-- Code -->
            </div>
        </section>

        <!--footer-->
        <section class="py-5 bg-dark">
            <div class="container">
                <div class="row">
                    <div class="col-md-6 offset-md-3 col-sm-8 offset-sm-2 col-xs-12 text-center">
                        <!-- <h3>Upgrade to Pro Version</h3>
                        <p class="pt-2">
                            We are working on <b>Charcoal Pro</b> which will be released soon. The pro version 
                            will have a lot more components, sections, icons, plugins and example pages. 
                            Join the waiting list to get notified when we release it (plus discount code).
                        </p>
                        <a class="btn btn-warning" href="https://wireddots.com/newsletter">Join Waiting List</a>
                        <hr class="my-5"/> -->
                        <p class="pt-2 text-muted">
                            &copy; by czh
                        </p>
                        <p class="small">
                            <a rel="nofollow" target="_blank" href="https://unsplash.com/photos/RbCqa2uAYq4">Photo</a> by <a rel="nofollow" target="_blank" href="https://unsplash.com/@mvdheuvel">Maarten van den Heuvel</a> on <a rel="nofollow" target="_blank" href="https://unsplash.com">Unsplash</a>
                        </p>
                    </div>
                </div>
            </div>
        </section>

        <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.3/umd/popper.min.js"></script>
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/js/bootstrap.min.js"></script>
        <script src="js/app.js"></script>
        <script>
            // 在页面加载的时候，尝试从服务器获取题目列表，通过 ajax 的方式来进行获取
            function getProblems() {
                // 1. 先通过 ajax 从服务器获取到题目列表.
                // 参数不固定，传入 json 对象即可
                $.ajax({
                    url: "problem",
                    type: "GET",
                    success: function (data, status) {
                        // 如果调用成功，就触发回调函数 data 是响应的 body，status 是响应的状态码
                        // 2. 把得到的响应数据给构造成 HTML 片段
                        makeProblemTable(data);
                    }
                })
            }

            // 通过这个函数来把数据转换成 HTML 页面片段
            function makeProblemTable(data) {
                // 获取到前台列表中的元素
                let problemTable = document.querySelector("#problemTable");
                //
                for (let problem of data) {
                    let tr = document.createElement("tr");

                    // id
                    let tdId = document.createElement("td");
                    tdId.innerHTML = problem.id;
                    tr.appendChild(tdId);

                    // 题目
                    let tdTitle = document.createElement("td");
                    let a = document.createElement("a");
                    a.innerHTML = problem.title;
                    // 跳转到 problemDetail.html 页面
                    a.href = 'problemDetail.html?id=' + problem.id;
                    // 跳转到新页面
                    a.target = '_blank';
                    tdTitle.appendChild(a);
                    tr.appendChild(tdTitle);

                    // 难度
                    let tdLevel = document.createElement("td");
                    tdLevel.innerHTML = problem.level;
                    tr.appendChild(tdLevel);

                    problemTable.appendChild(tr);

                }
            }


            getProblems();
        </script>
    </body>
</html>
